home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #3 / Amiga Plus CD - 2002 - No. 03.iso / AmigaPlus / Tools / Development / envCPP31 / c++ / tools / makemake / readme
Encoding:
Text File  |  2002-01-01  |  3.4 KB  |  77 lines

  1. SHORT
  2.  
  3.   Create makefiles automatically
  4.  
  5. AUTHOR
  6.  
  7.   Dietmar Eilert (mail@dietmar-eilert.de)
  8.   http://www.dietmar-eilert.de
  9.  
  10. USAGE
  11.  
  12.   makemake is a command line tool which creates a makefile for a
  13.   user-specified list of source codes (the makefile is dumped to the
  14.   console window but can be redirected into a makefile via normal output
  15.   redirection). This tool is designed to be used with the C/C++ mode of
  16.   GoldED. If you want to use it manually, here is the syntax:
  17.  
  18.   makemake <option> <option> ... FILES=<source code> <source code> ...
  19.  
  20. OPTIONS
  21.  
  22.   COMPILE/K         command line for compile (*)
  23.   LINK/K            command line for compile and link (*)
  24.   FILES/M           file(s) to be checked
  25.   IGNORE/K          ignore pattern
  26.   LOCAL/S           Consider dependencies on local  headers (#include "...")
  27.   GLOBAL/S          Consider dependencies on global headers (#include <...>)
  28.   RECURSELOCAL/S    Looks recursively into local  headers
  29.   RECURSEGLOBAL/S   Looks recursively into global headers
  30.   EXECUTABLE/K      makefile is supposed to generate executable file
  31.   OBJECTS/S         makefile is supposed to generate objects
  32.   TARGET/K          makefile is supposed to link objects into this file
  33.   PREFIX/K          prefix for object files (to collect o-files in a subfolder)
  34.   INCLUDE/K         path to global headers
  35.   SDK/K             path to global headers (alternative path)
  36.   CASESENSITIVE/S   file system on this computer is case-sensitive
  37.   NESTEDCOMMENTS/S  permit nested comments in source codes and headers
  38.   MARGIN/N          recommended line width in makefile
  39.   TABSIZE/N         tab size associated with TAB character
  40.   CONTINUE/S        ignore fatal errors (missing files)
  41.   VERBOSE/S         indicate progress
  42.  
  43.   (*) suitable commands for the vbcc compiler will be used if not specified
  44.  
  45. EXAMPLES
  46.  
  47.   makemake >makefile LOCAL EXECUTABLE="test" FILES "main.c"
  48.  
  49.   This command line creates a makefile for the vbcc compiler (built-in
  50.   default) suitable for compiling the source code "main.c" into the
  51.   executable "test". The makefile is designed to compile the source code
  52.   directly into the executable without explicit creation of object files.
  53.   Local includes (files directly included by "main.c") are considered as
  54.   dependencies but other local or global headers are not taken into
  55.   account. This command line can be modified as follows:
  56.  
  57.   - add the RECURSELOCAL option to consider dependencies on all local
  58.   headers (makemake will follow all #include statements recursively). This
  59.   is useful if you have a local header file which includes other local
  60.   header files which include other local header files etc.
  61.  
  62.   - add the OBJECTS options to explicitely create (and keep) intermediate
  63.   object files. If you use this option, you may want to combine it with
  64.   PREFIX="o/" to collect the object files in the local "o/" folder. Keeping
  65.   object files around reduces the time required for recompilation cycles.
  66.  
  67.   - you may want to use the INCLUDE option to indicate where the globals
  68.   includes are located on your system.
  69.  
  70.   - if you use a compiler other than vbcc, you will have to define suitable
  71.   compile and link commands. Note that makemake will append the target and
  72.   the dependencies (in that order) after these commands. The built-in
  73.   defaults are:
  74.  
  75.   COMPILE/K (to compile source code into object): "vc +vc.config -c -o"
  76.   LINK/K (to link objects into executable):       "vc +vc.config -o"
  77.